iT邦幫忙

2022 iThome 鐵人賽

DAY 18
0
Software Development

Java入門的30張門票系列 第 18

[Day18] package & import

  • 分享至 

  • xImage
  •  

在JAVA中有可能會出現三個稱為編譯單元的元素,這些元素是非必要的,但如果有的話是有順序性的!
Package(只有一個) -> import(可以有多個) -> class(可以有多個)

套件 package

套件就像是一個管理容器,可以把你自己定義的名稱分別管理在package下,就不會有名字相同的情況發生,通常會把性質相似的類別集合在一起,它被設計與檔案系統結構相對應,所以如果你的套件為myPackage.test,那該類別就會在myPackage資料夾中的test資料夾裡找到,但如果.class檔沒有放在相對應的資料夾內編譯就會發生錯誤。如果沒有設定套件的類別就是把class檔放在目前工作環境的目錄中。

引用 import

import可以用來引入API中的功能,或是自己定義的套件。不過有兩種情況java會自動引用。

  1. java.lang.*: 這是很常用的類別,像是String就是這個套件的
  2. 目前工作環境所在的套件,裡面的類別可以直接使用

除了這兩種還想使用其他的套件的話都需要import,要注意的是

import java.xx.*;

這樣子是引用xx資料夾內的類別,並不包含其中子目錄的類別,例如xx資料夾內還有yy資料夾,yy資料夾內的類別需要另外引入。

import java.xx.yy.*;

如果要引用套件中的所有類別可以用*。

import java.util.*;
Date date = new Date();

若只想引用其中的特定類別。

import java.util.Date;
Date date = new Date();

如果遇到類別名稱相同的情況,就要使用類別長名稱,否則編譯就是發生錯誤,畢竟它無法確定你要使用的是哪個Date。

java.sql.Date = new java.sql.Date();
java.util.Date = new java.util.Date();

上一篇
[Day17] 誰說兒子只能是兒子 - 多型
下一篇
[Day19] 看似不重要其實控制一切 - 修飾子
系列文
Java入門的30張門票30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言